package com.atguigu.admin.controller;

import com.atguigu.admin.bean.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;

import javax.servlet.http.HttpSession;

/**
 * @author 杨林
 * @create 2023-08-29 10:56 星期二
 * description:
 */

@Controller
public class IndexController {


    /**
     * 跳转到登录页面
     * @return
     */
    @GetMapping({"/","/login"})
    public String loginPage(){
       
        return "login";
    }


    /**
     * 真正实现登录功能
     * @return
     */
    @PostMapping("/login")
    public String login(User user, HttpSession session, Model model){
        if (!StringUtils.isEmpty(user.getUserName()) && !StringUtils.isEmpty(user.getPassword())){
            //把登录成功用户保存到session中
            session.setAttribute("loginUser",user);
            //登录成功，重定向到main.html   //重定向防止表单重复提交
            return "redirect:/main.html";
        }else {
            model.addAttribute("msg","账号密码错误");
            
            //回到登录页
            return "login";
        }
        
        
    }

    /**
     * 去main页面
     * @return
     */
    @GetMapping("/main.html")
    public String mainPage(HttpSession session,Model model){
        
        //判断当前用户是否登录  拦截器  过滤器
        Object loginUser = session.getAttribute("loginUser");
        if (loginUser != null){
            return "main";
        }else {
            model.addAttribute("msg","当前未登录，请重新登录");
            //回到登录页
            return "login";
        }
    }
    
}
